package com.ship.boats.mapper;


import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ship.boats.domain.SpBoatsPscInspect;
import com.ship.boats.domain.dto.ExportInspectionsRq;
import com.ship.boats.domain.vo.QueryInspectionDetailsInfo;
import com.ship.boats.domain.vo.QueryInspectionsCertificatesInfo;
import com.ship.boats.domain.vo.QueryInspectionsDefectsInfo;
import com.ship.boats.domain.vo.QueryPscInspectInfo;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface SpBoatsPscInspectMapper extends BaseMapper<SpBoatsPscInspect> {
    List<QueryPscInspectInfo> queryPscInspectList(@Param("shipName") String shipName,
                                                  @Param("imo") String imo,
                                                  @Param("inspectionsType") String inspectionsType,
                                                  @Param("inspectionPortCode") String inspectionPortCode,
                                                  @Param("inspectionPortDecode") String inspectionPortDecode,
                                                  @Param("newShipNameList") List<String> newShipNameList,
                                                  @Param("newImoList") List<String> newImoList,
                                                  @Param("newInspectionsTypeList") List<String> newInspectionsTypeList,
                                                  @Param("newInspectionPortCodeList") List<String> newInspectionPortCodeList,
                                                  @Param("newInspectionPortDecodeList") List<String> newInspectionPortDecodeList,
                                                  @Param("ids") List<String> ids);

    List<String> queryBoatsImoList();

    QueryInspectionDetailsInfo queryPscInspectById(@Param("id") Long id);

    List<QueryInspectionsCertificatesInfo> InspectionsCertificatesList(@Param("query") ExportInspectionsRq query);

    List<QueryInspectionsDefectsInfo> queryInspectionsDefectsList(@Param("query") ExportInspectionsRq query);
}
